// pages/pages-list/success/success.js
import api from '../../../utils/api/api'
import tool from "../../../utils/publics/tool"
import qrcode from '../../../utils/publics/qrcode';
import config from "../../../config"
Page({

  /**
   * 页面的初始数据
   */
  data: {
    id: '', // id  
    give: ['1.报名成功二维码为个人唯一码，仅对应唯一身份证/手机号，每日限三次进出。', '2..纸质门票不作为入场凭证，需扫码激活后换取电子二维码，激活前不记名、不挂失，遗失不补，请妥善保管。', '3.电子门票一经售出概不退换，如合作平台承诺退还则请联系购票平台处理。', '4.入场时，请配合工作人员进行进行体湿检测，体温异常者(>37摄氏度)将被拒绝入场:观展全程佩戴好口罩。', '5.观展人流高峰期主办方将视情况采取必要的限流措施，以保障大家的观展体验和安全。', '6.展出内容及展期活动主办方保留最终解释权。', '7.请您携带身份证原件参观。', '8.观展时间 10月14-15日,10:00-18:00;10月16日,10:00-17:00'],
    info: {},
    vShow: false, // 弹框
    posterImgUrl: '', // 海报临时路径
    imagePath2:[],
    posterCode: '', // 海报二维码
    isUseShare: true, // 局部分享
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.setData({
      id: options.id || ''
    })
    this.getData();
  },
  // 获取详情
  getData() {
    api.enroll_detail({
      id: this.data.id
    }).then(res => {
      let {
        code,
        data,
        msg
      } = res;
      if (code == 1) {
        this.setData({
          info: data
        })
        // this.generateCode();
        if( data.code_list){
          data.code_list.forEach((item,index) => {
            this.generateCode(item,index);
          });
        }else{
          this.generateCode(data.code);
        }
       
        this.getPoster();
       
      }
    })
  },
  // 获取海报二维码
  getPoster() {
    let info = this.data.info;
    api.get_poster({
      aid: info.aid
    }).then(res => {
      let {
        code,
        data,
        msg
      } = res;
      if (code == 1) {
        this.setData({
          posterCode: data
        })
      }
    })
  },
  // 生成二维码
  generateCode(item,index) {
    let info = this.data.info;
    tool.loading();
    let id  = index==0?'qrcode':'qrcodeS';
    console.log(id,item);
    let imagePath2 = this.data.imagePath2;
    this.toQrcode(id, item, 350, 350);
    let getImgPath = () => {
      setTimeout(() => {
        tool.loading_h();
        Promise.all([tool.canvasToTempImage2(id, 350, 350)]).then(res => {
          imagePath2.push(res[0])
          this.setData({
            imagePath2
          });
        }).catch(err => {
          getImgPath()
        })
      }, 500)
    }
    getImgPath()
  },
  // 把数字转换成二维码
  toQrcode(canvasId, code, width, height) {
    return qrcode.api.draw(code, {
      ctx: wx.createCanvasContext(canvasId),
      width,
      height
    })
  },
  // 分享海报
  share() {
    this.getSharePoster();
    this.setData({
      vShow: true
    })
  },
  //获取分享海报
  getSharePoster() {
    var _this = this
    tool.loading("海报生成中", "loading")
    this.data.canvasLoading = setTimeout(() => {
      if (!this.data.posterImgUrl) {
        tool.loading_h()
        tool.alert("海报生成失败，请稍后再试")
      }
    }, 15000)
    tool.canvasImg({
      canvasId: 'myCanvas',
      canvasSize: '554*984', // 574*1022
      imgList: [{
          url: `${config.ASSETSURL}playbill.png`,
          drawW: 554,
          drawH: 984,
          imgX: 0,
          imgY: 0
        },
        {
          url: `${this.data.posterCode}`,
          drawW: 73,
          drawH: 73,
          imgX: 440,
          imgY: 875
        },
      ],
    }).then(res => {
      console.log("res", res)
      tool.loading_h()
      _this.setData({
        isPosterOk: true,
        posterImgUrl: res
      })
    })
  },
  // 关闭弹框
  close() {
    this.setData({
      vShow: false
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
    let qrcode_id = this.data.info.qrcode_id;
    let path = `/pages/index/index`;
    if (qrcode_id > 0) {
      path = `/pages/index/index?scene=${qrcode_id}`
    };
    return {
      title: (wx.getStorageSync("userInfo").nickname ? wx.getStorageSync("userInfo").nickname : '') + "邀请您一起参加东莞AG潮人集",
      path,
      imageUrl: `https://img.vrupup.com/web/rq/ait/images/share.png`,
      query: '分享',

    }
  }
})